Method and system for identifying conflicts within wall framing members of a structure

ABSTRACT

The present invention is a method comprising; accessing a model, wherein the model is comprised of a plurality of members; isolating a set of wall panels, wherein the wall panels are comprised of members; analyzing each of the members of the wall panel and determining a set of actual properties of each of the members; comparing the actual properties of the members are within a predetermined tolerance of a set of required properties for each of the specific members, wherein if the member is not within the set of required properties the member is conflicting; and generating a list of all conflicting members.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part (and claims the benefit ofpriority under 35 USC 120) of U.S. application Ser. No. 16/677,639 filedNov. 7, 2019 currently pending. The disclosure of the prior applicationsis considered part of (and is incorporated by reference in) thedisclosure of this application.

BACKGROUND

This disclosure relates generally to building construction and inparticular, to the method, computer program, or computer system forproviding the quality control of the material for the buildingconstruction and determining conflicts within the building construction.

A building typically has many different components, like foundation,walls, joists, trusses, sheathings many other different components. Whenthese components are connect with each other in a proper format buildingis formed. Each individual component is made up of different panels andeach panel is made up of different individual members. If each member isnot as per the required specification or dimensions then it leads toform conflict. Conflict in the wall panel is occurred due to improperlength of the member, individual member orientation, overlapping of themembers, wrong positions of required cuts and service holes in themembers. So checking of the each individual wall panel is very timeconsuming and critical task for the engineer.

During the building construction, the connections and placing of eachwall panel is very important to be considered for hassle and conflictfree construction. The constructability of wall panel to avoid anyconflict between any disciplines is critical aspect. Traditional methodof reviewing the constructability checks for each individual wall panelmanually in the detailing software is time consuming and chances oferror are more.

Therefore, it is beneficial to assist each of the wall panel at theearliest stage to determine where issues exist and preemptivelycorrecting these issues before construction begins.

SUMMARY

In a first embodiment the present invention is a computer implementedmethod comprising: accessing, by at least one processor, a model,wherein the model is comprised of a plurality of members; isolating, byat least one processor, a set of wall panels, wherein the wall panelsare comprised of members; analyzing, by at least one processor, each ofthe members of the wall panel and determining a set of actual propertiesof each of the members; comparing, by at least one processor, the actualproperties of the members are within a predetermined tolerance of a setof required properties for each of the specific members, wherein if themember is not within the set of required properties the member isconflicting; and generating, by at least one processor, a list of allconflicting members.

In a second embodiment the present invention is a computer programproduct comprising: a computer readable storage device readable by oneor more processing circuit and storing instructions for execution by oneor more processor for performing a method comprising: accessing a model,wherein the model is comprised of a plurality of members; isolating aset of wall panels, wherein the wall panels are comprised of members;analyzing each of the members of the wall panel and determining a set ofactual properties of each of the members; comparing the actualproperties of the members are within a predetermined tolerance of a setof required properties for each of the specific members, wherein if themember is not within the set of required properties the member isconflicting; and generating a list of all conflicting members.

In a third embodiment the present invention is a system comprising: amemory; one or more processors in communication with the memory; programinstructions executable by the one or more processors via the memory toperform a method, the method comprising: accessing a model, wherein themodel is comprised of a plurality of members; isolating a set of wallpanels, wherein the wall panels are comprised of members; analyzing eachof the members of the wall panel and determining a set of actualproperties of each of the members; comparing the actual properties ofthe members are within a predetermined tolerance of a set of requiredproperties for each of the specific members, wherein if the member isnot within the set of required properties the member is conflicting; andgenerating a list of all conflicting members.

BRIEF DESCRIPTION OF THE DRAWINGS

Referring now to the drawings in which like reference numbers representcorresponding parts throughout:

FIG. 1 depicts a block diagram depicting a computing environment, inaccordance with one embodiment of the present invention.

FIG. 2 depicts a block diagram depicting the internal and externalcomponents of the server and computing device of FIG. 1, in accordancewith one embodiment of the present.

FIG. 3 depicts a cloud computing environment, in accordance with oneembodiment of the present invention.

FIG. 4 depicts a flowchart of the operational steps of a method fordetermining the directional conflict checks for wall panels in abuilding within the computing environment of FIG. 1, in accordance withone embodiment of the present invention.

FIG. 5 depicts a structural frame model of a building, in accordancewith one embodiment of the present invention.

FIG. 6 depicts an architectural model of a building, in accordance withone embodiment of the present invention.

FIG. 7 depict an illustration of an architectural floor layouts for abuilding, in accordance with one embodiment of the present invention.

FIG. 8A depicts an illustration of an architectural building elevation,in accordance with one embodiment of the present invention.

FIG. 8B depicts an illustration of an architectural building elevation,in accordance with one embodiment of the present invention.

FIG. 10A depicts a wall panel model, in accordance with one embodimentof the present invention.

FIG. 10B depicts the wall panel model exploded, in accordance with oneembodiment of the present invention.

FIG. 10C depicts the wall panel profile, in accordance with oneembodiment of the present invention.

FIG. 11A depicts an illustration of the wall panel, in accordance withone embodiment of the present invention.

FIG. 11B depicts the wall panel exploded, in accordance with oneembodiment of the present invention.

FIG. 12A depicts an image of an intersection between frame members, inaccordance with one embodiment of the present invention.

FIG. 12B depicts a section view of a frame member, in accordance withone embodiment of the present invention.

FIG. 13A depicts an image of an electrical unit intersection with wallpanel, in accordance with one embodiment of the present invention.

FIG. 13B depicts an image of a plumbing unit intersection with wallpanel, in accordance with one embodiment of the present invention.

DETAILED DESCRIPTION

The present invention generally relates to the process of analyzing abuilding to identify conflicts or design errors, and correcting theerrors at the design stage so the construction can be completed withminimal or no issues. Through the location of the wall panels, theidentification of the wall panel members, and the analysis of the wallpanel members to determine if they have the correct properties and ifthey are outside of the tolerance values, correcting the errors with thewall panel members.

The present invention uses the unique feature of analyzing the wallpanel members and determining if there are any internal conflicts. Theinternal conflicts are related to the features (length, height, width,openings, cutouts, etc.) of the wall panel members. In instances whereconflicts are identified with the wall panel member(s), they are addedto a sick list, which identifies the conflicts of the wall panel memberalso shows the condition under which the given conflict occurs. Theunique feature saves the time of review the building members and prepareconflict wall member sick list for the wall panel members and alsoeliminate the chance of error with the construction process.

In the typical construction process a model of the building (e.g.structure, home, office building, hospital, garage, barn, apartmentbuilding, etc.) is imported from third party software or created withinthe present system. The next step is to generate the manufacturing filesfor the roll forming machine. However, the generation of thesemanufacturing files is not advised or able to be completed until averification of possible conflicts of the wall systems is completed.Otherwise the potential for cold formed steel members to be manufacturedwithout the proper cutouts or design require either new parts need to bemanufactured, or manual modification of the parts need to be completedon the job site. Both of these take time and additional resources tocomplete. The reviewing of the model from constructability aspect andidentify the possible conflicts is a time consuming task before the wallpanel members are manufactured. If the user is able to quickly identifythe conflicts in the model, the entire process of constructing thebuilding can be shortened.

The present invention provides for an advantage of allowing the reviewof the model by providing a unique process of constructability conflictcheck for the structural system, architectural system, mechanicalsystem, electrical system, and plumbing system, and the like withreference to wall panels. The wall panel members which have internalconflicts are identified, marked, and corrected.

The term “conflict” is used for any incidence, location, feature (e.g.properties) where any one member is not equal to or within thepredetermined tolerance of the member properties. For example, aconflict may be the member is not at the required position, not withinthe required specifications, not adhering to predetermined codes, or thelike.

As stated prior the advantage of this system is a specialized andspecific assessment of the wall panel members real properties relativeto a required set of properties, that provide the user with detailedinformation on the conflicts of each wall panel member, and an efficientsolution to the conflicts. This provides a major cost and time savingfeature when the construction of the building begins and during theprocess.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowcharts and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowcharts may represent a module, segment, or portion of instructions,which comprises one or more executable instructions for implementing thespecified logical function(s). In some alternative implementations, thefunctions noted in the block may occur out of the order noted in thefigures. For example, two blocks shown in succession may, in fact, beexecuted substantially concurrently, or the blocks may sometimes beexecuted in the reverse order, depending upon the functionalityinvolved. It will also be noted that each block of the flowchartillustrations, and combinations of blocks in the flowchartillustrations, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts or carry outcombinations of special purpose hardware and computer instructions.

It is understood in advance that although this disclosure includes adetailed description on cloud computing, implementation of the teachingsrecited herein are not limited to a cloud computing environment. Rather,embodiments of the present invention are capable of being implemented inconjunction with any other type of computing environment now known orlater developed.

Cloud computing is a model of service delivery for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g. networks, network bandwidth, servers, processing,memory, storage, applications, virtual machines, and services) that canbe rapidly provisioned and released with minimal management effort orinteraction with a provider of the service. This cloud model may includeat least five characteristics, at least three service models, and atleast four deployment models.

Characteristics are as follows:

On-demand self-service: a cloud consumer can unilaterally provisioncomputing capabilities, such as server time and network storage, asneeded automatically without requiring human interaction with theservice's provider.

Broad network access: capabilities are available over a network andaccessed through standard mechanisms that promote use by heterogeneousthin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

Resource pooling: the provider's computing resources are pooled to servemultiple consumers using a multi-tenant model, with different physicaland virtual resources dynamically assigned and reassigned according todemand. There is a sense of location independence in that the consumergenerally has no control or knowledge over the exact location of theprovided resources but may be able to specify location at a higher levelof abstraction (e.g., country, state, or datacenter).

Rapid elasticity: capabilities can be rapidly and elasticallyprovisioned, in some cases automatically, to quickly scale out andrapidly released to quickly scale in. To the consumer, the capabilitiesavailable for provisioning often appear to be unlimited and can bepurchased in any quantity at any time.

Measured service: cloud systems automatically control and optimizeresource use by leveraging a metering capability at some level ofabstraction appropriate to the type of service (e.g., storage,processing, bandwidth, and active user accounts). Resource usage can bemonitored, controlled, and reported providing transparency for both theprovider and consumer of the utilized service.

Service Models are as follows:

Software as a Service (SaaS): the capability provided to the consumer isto use the provider's applications running on a cloud infrastructure.The applications are accessible from various client devices through athin client interface such as a web browser (e.g., web-based e-mail).The consumer does not manage or control the underlying cloudinfrastructure including network, servers, operating systems, storage,or even individual application capabilities, with the possible exceptionof limited user-specific application configuration settings.

Platform as a Service (PaaS): the capability provided to the consumer isto deploy onto the cloud infrastructure consumer-created or acquiredapplications created using programming languages and tools supported bythe provider. The consumer does not manage or control the underlyingcloud infrastructure including networks, servers, operating systems, orstorage, but has control over the deployed applications and possiblyapplication hosting environment configurations.

Infrastructure as a Service (IaaS): the capability provided to theconsumer is to provision processing, storage, networks, and otherfundamental computing resources where the consumer is able to deploy andrun arbitrary software, which can include operating systems andapplications. The consumer does not manage or control the underlyingcloud infrastructure but has control over operating systems, storage,deployed applications, and possibly limited control of select networkingcomponents (e.g., host firewalls).

Deployment Models are as follows:

Private cloud: the cloud infrastructure is operated solely for anorganization. It may be managed by the organization or a third party andmay exist on-premises or off-premises.

Community cloud: the cloud infrastructure is shared by severalorganizations and supports a specific community that has shared concerns(e.g., mission, security requirements, policy, and complianceconsiderations). It may be managed by the organizations or a third partyand may exist on-premises or off-premises.

Public cloud: the cloud infrastructure is made available to the generalpublic or a large industry group and is owned by an organization sellingcloud services.

Hybrid cloud: the cloud infrastructure is a composition of two or moreclouds (private, community, or public) that remain unique entities butare bound together by standardized or proprietary technology thatenables data and application portability (e.g., cloud bursting forload-balancing between clouds).

A cloud computing environment is service oriented with a focus onstatelessness, low coupling, modularity, and semantic interoperability.At the heart of cloud computing is an infrastructure comprising anetwork of interconnected nodes.

FIG. 1 depicts a block diagram of a computing environment 100 inaccordance with one embodiment of the present invention. FIG. 1 providesan illustration of one embodiment and does not imply any limitationsregarding the environment in which different embodiments maybeimplemented. In the depicted embodiment, computing environment 100includes network 102, computing device 104, and server 106. Computingenvironment 100 may include additional servers, computers, or otherdevices not shown.

Network 102 may be a local area network (LAN), a wide area network (WAN)such as the Internet, any combination thereof, or any combination ofconnections and protocols that can support communications betweencomputing device 104 and server 106 in accordance with embodiments ofthe invention. Network 102 may include wired, wireless, or fiber opticconnections.

Computing device 104 may be a management server, a web server, or anyother electronic device or computing system capable of processingprogram instructions and receiving and sending data. In otherembodiments, computing device 104 may be a laptop computer, tabletcomputer, net book computer, personal computer (PC), a desktop computer,or any programmable electronic device capable of communicating withpatient computing device 104 via network 102. In other embodiments,computing device 104 may be a server computing system utilizing multiplecomputers as a server system, such as in a cloud computing environment.In one embodiment, computing device 104 represents a computing systemutilizing clustered computers and components to act as a single pool ofseamless resources. Computing device 104 may include components, asdepicted and described in further detail with respect to FIG. 1.

Server 106 may be a management server, a web server, or any otherelectronic device or computing system capable of processing programinstructions and receiving and sending data. In other embodiments server106 may be a laptop computer, tablet computer, net book computer,personal computer (PC), a desktop computer, or any programmableelectronic device capable of communicating via network 102. In oneembodiment, server 106 may be a server computing system utilizingmultiple computers as a server system, such as in a cloud computingenvironment. In one embodiment, server 106 represents a computing systemutilizing clustered computers and components to act as a single pool ofseamless resources. In the depicted embodiment conflict identificationprogram 108 and database 110 are located on server 106. Server 106 mayinclude components, as depicted and described in further detail withrespect to FIG. 1.

Conflict identification program 108 analyzes the wall panel members of abuilding and determines if the actual properties of the wall panelmembers are within the predetermined tolerances of the required wallpanel member properties, and if it is determined that the wall panelmembers are not within the desired ranges, the conflicting wall panelmembers are identified and reason of the conflict is identified. In someembodiments, the conflict identification program 108 corrects theconflicts within the wall panel member.

The required values are known values from which certain wall panelmembers need to possess for the correct wall panels to be manufacturedand assembled with minimal to no issues. These values are associatedwith the various properties of the wall panel members. The propertiesrelate to the features of the of the wall panel members. For example,the length, width, height, orientation, cutouts, dimples, openings, orthe like. This also includes the position of the member within the modelrelative to the x, y, and z axes. This also includes how the wall panelmembers interact with other features or systems of the model, forexample plumbing, electrical, HVAC, and the like. In some embodiments,the conflict identification program 108 accesses various building codesand laws of the state, local, or federal guidelines which are requiredto construct the building and applies these requirements.

In the depicted embodiment, Conflict identification program 108 utilizesnetwork 102 to access the computing device 104 and to communicate withdatabase 110. In one embodiment, Conflict identification program 108resides on computing device 104. In other embodiments, Conflictidentification program 108 may be located on another server or computingdevice, provided Conflict identification program 108 has access todatabase 110.

Database 110 may be a repository that may be written to and/or read byConflict identification program 108. Information gathered from computingdevice 104 and the 1D, 2D, and 3D drawings and models as well as therequirements so that the materials and members are identified asconflicting or non-conflicting. In one embodiment, database 110 is adatabase management system (DBMS) used to allow the definition,creation, querying, update, and administration of a database(s). In thedepicted embodiment, database 110 resides on computing device 104. Inother embodiments, database 110 resides on another server, or anothercomputing device, provided that database 110 is accessible to Conflictidentification program 108.

FIG. 2, a schematic of an example of a cloud computing node is shown.Cloud computing node 10 is only one example of a suitable cloudcomputing node and is not intended to suggest any limitation as to thescope of use or functionality of embodiments of the invention describedherein. Regardless, cloud computing node 10 is capable of beingimplemented and/or performing any of the functionality set forthhereinabove.

In cloud computing environment 10 there is a computer system/server 12,which is operational with numerous other general purpose or specialpurpose computing system environments or configurations. Examples ofwell-known computing systems, environments, and/or configurations thatmay be suitable for use with computer system/server 12 include, but arenot limited to, personal computer systems, server computer systems, thinclients, thick clients, hand-held or laptop devices, multiprocessorsystems, microprocessor-based systems, set top boxes, programmableconsumer electronics, network PCs, minicomputer systems, mainframecomputer systems, and distributed cloud computing environments thatinclude any of the above systems or devices, and the like.

Computer system/server 12 may be described in the general context ofcomputer system executable instructions, such as program modules, beingexecuted by a computer system. Generally, program modules may includeroutines, programs, objects, components, logic, data structures, and soon that perform particular tasks or implement particular abstract datatypes. Computer system/server 12 may be practiced in distributed cloudcomputing environments where tasks are performed by remote processingdevices that are linked through a communications network. In adistributed cloud computing environment, program modules may be locatedin both local and remote computer system storage media including memorystorage devices.

FIG. 2, computer system/server 12 in cloud computing node 10 is shown inthe form of a general-purpose computing device. The components ofcomputer system/server 12 may include, but are not limited to, one ormore processors or processing units 16, a system memory 28, and a bus 18that couples various system components including system memory 28 toprocessor 16.

Bus 18 represents one or more of any of several types of bus structures,including a memory bus or memory controller, a peripheral bus, anaccelerated graphics port, and a processor or local bus using any of avariety of bus architectures. By way of example, and not limitation,such architectures include Industry Standard Architecture (ISA) bus,Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, VideoElectronics Standards Association (VESA) local bus, and PeripheralComponent Interconnects (PCI) bus.

Computer system/server 12 typically includes a variety of computersystem readable media. Such media may be any available media that isaccessible by computer system/server 12, and it includes both volatileand non-volatile media, removable and non-removable media.

System memory 28 can include computer system readable media in the formof volatile memory, such as random access memory (RAM) 30 and/or cachememory 32. Computer system/server 12 may further include otherremovable/non-removable, volatile/non-volatile computer system storagemedia. By way of example only, storage system 34 can be provided forreading from and writing to a non-removable, non-volatile magnetic media(not shown and typically called a “hard drive”). Although not shown, amagnetic disk drive for reading from and writing to a removable,non-volatile magnetic disk (e.g., a “floppy disk”), and an optical diskdrive for reading from or writing to a removable, non-volatile opticaldisk such as a CD-ROM, DVD-ROM or other optical media can be provided.In such instances, each can be connected to bus 18 by one or more datamedia interfaces. As will be further depicted and described below,memory 28 may include at least one program product having a set (e.g.,at least one) of program modules that are configured to carry out thefunctions of embodiments of the invention.

Program/utility 40, having a set (at least one) of program modules 42,may be stored in memory 28 by way of example, and not limitation, aswell as an operating system, one or more application programs, otherprogram modules, and program data. Each of the operating system, one ormore application programs, other program modules, and program data orsome combination thereof, may include an implementation of a networkingenvironment. Program modules 42 generally carry out the functions and/ormethodologies of embodiments of the invention as described herein.

Computer system/server 12 may also communicate with one or more externaldevices 14 such as a keyboard, a pointing device, a display 24, etc.;one or more devices that enable a user to interact with computersystem/server 12; and/or any devices (e.g., network card, modem, etc.)that enable computer system/server 12 to communicate with one or moreother computing devices. Such communication can occur via Input/output(I/O) interfaces 22. Still yet, computer system/server 12 cancommunicate with one or more networks such as a local area network(LAN), a general wide area network (WAN), and/or a public network (e.g.,the Internet) via network adapter 20. As depicted, network adapter 20communicates with the other components of computer system/server 12 viabus 18. It should be understood that although not shown, other hardwareand/or software components could be used in conjunction with computersystem/server 12. Examples, include, but are not limited to: microcode,device drivers, redundant processing units, external disk drive arrays,RAID systems, tape drives, and data archival storage systems, etc.

FIG. 3, illustrative cloud computing environment 50 is depicted. Asshown, cloud computing environment 50 comprises one or more cloudcomputing nodes 10 with which local computing devices used by cloudconsumers, such as, for example, personal digital assistant (PDA) orcellular telephone 54A, desktop computer 54B, and/or laptop computer 54Cmay communicate. Nodes 10 may communicate with one another. They may begrouped (not shown) physically or virtually, in one or more networks,such as Private, Community, Public, or Hybrid clouds as describedhereinabove, or a combination thereof. This allows cloud computingenvironment 50 to offer infrastructure, platforms and/or software asservices for which a cloud consumer does not need to maintain resourceson a local computing device. It is understood that the types ofcomputing devices 54A-C shown in FIG. 2 are intended to be illustrativeonly and that computing nodes 10 and cloud computing environment 50 cancommunicate with any type of computerized device over any type ofnetwork and/or network addressable connection (e.g., using a webbrowser).

-   -   1. Referring back to FIG. 2, the Program/utility 40 may include        one or more program modules 42 that generally carry out the        functions and/or methodologies of embodiments of the invention        as described herein. Specifically, the program modules 42 many        analyze a building model, identify the wall panels and the wall        panel members and determine if there is a conflict with the wall        panel members internally based on a required set of values and a        measured or actual set of values. Other functionalities of the        program modules 42 are described further herein such that the        program modules 42 are not limited to the functions described        above. Moreover, it is noted that some of the modules 42 can be        implemented within the infrastructure shown in FIGS. 1-3.

FIG. 4 depicts a flowchart 400 of the operational steps of a method foridentifying conflicts for wall member in building within the computingenvironment of FIG. 1, in accordance with one embodiment of the presentinvention. The method(s) and associated process(es) are now discussed,over the course of the following paragraphs, in accordance with oneembodiment of the present invention.

The program(s) described herein are identified based upon theapplication for which they are implemented in a specific embodiment ofthe invention. However, it should be appreciated that any particularprogram nomenclature herein is used merely for convenience, and thus theinvention should not be limited to use solely in any specificapplication identified and/or implied by such nomenclature.

In step 402, the conflict identification program 108 accesses thebuilding model and the wall panel member required property values. Theconflict identification program 108, through accessing the database or athird-party storage location receives the building model (orillustrations). The required property values for the wall panel membersare used in the comparison between the actual wall panel memberproperties and the required wall panel member properties to determine ifthe difference (delta) is within the predetermined tolerance ranges.

In step 404, the conflict identification program 108 analyzes the modelto identify the wall panel members. Based on the received model or imagetype, the conflict identification program 108 extracts the wall panelmembers from the other members and systems. In some embodiments wherethe model has all the members individually generated, the conflictprogram 108 is able to easily extract the wall panel members. Eitherfrom identifying the members first or identifying the wall panelassembly and then identifying the members within the wall panel. Ininstances where the model does not have each individual member created,the conflict identification program 108 analyzes the model or images tofirst determine which surfaces are walls versus floors or roofs. Thismay be based on the identification of certain apertures (e.g. windows,doors) and other features which are common to walls to segregate thesefeatures of the model or images from the rest of the model or images.This includes both external walls and internal walls. The conflictidentification program 108 then identifies the apertures of the wallsand generates a wall panel assembly comprised of members to provide forthe required frame to create the model.

In step 406, the conflict identification program 108 identify wall panelmembers. Once the conflict identification program 108 has identified thewall panels, the conflict identification program 108 is able to identifythe wall panel member individually so that the conflict identificationprogram 108 is able to extract the necessary information related to eachwall panel member. In some embodiments, the conflict identificationprogram 108 identifies the position of the wall panel members relativeto each other. For example, to make sure all horizontal members aresubstantially parallel and that the horizontal members are substantiallyperpendicular to the vertical members. For wall panels the wall panelmembers are substantially parallel or perpendicular unlike with floorjoists and roof trusses.

In step 408, the conflict identification program 108 determines theactual values for the wall panel member properties. These properties arerelated to all features of the wall panel member; length, height, width,thickness of material, orientation, position, cutouts, apertures, lips,flanges, Swedge, and the like. For example, the wall panel membersposition relative to the x, y, and x axes. In some embodiments, thelimitation of the shipping vehicles sets a maximum length of the wallpanel members. In some embodiments, the limitations of the manufacturingmachines are used to set the required values. For example, the thicknessof the material is a limitation on the wall panel members.

In some embodiments, the conflict identification program 108 identifiesthe required length of the horizontal member, top track and bottom trackis decided based on transportation limit, for this input is given by theuser during software processing. The required length of vertical wallmembers is determined by floor to floor height given in architecturaldrawings minus depth of the panels minus gap between top track andbottom track and vertical wall member. Required orientation of each coldformed steel member is determined as per the standard cold formed steelconstruction procedure. According to this for the wall panel dimensionsare obtained from transportation limit or openings provided in wall. Asper the start and end points of the wall panel, at the start of wallpanel flat surface of vertical member should be on outer side and at theend of wall panel flat surface of last vertical member should be onouter side and same logic is for top track and bottom track, means flatsurface should be on outer side. Required horizontal spacing of thevertical member is given as input, as per the spacing of the verticalmembers are placed one by one and there are chances that at the end ofwall panel member may get overlap to each other. For this conditionminimum gap (tolerance) should be provided in between two members.Member lip cut/web cut is the standard tool operation in cold formedsteel and is determined by the location where another cold formed steelmember intersecting/connecting to it. Swedging, when two cold formedsteel members having same size are connecting to each other, then onemember should be swedged into another member by some amount(tolerance).The service hole requirement, the required location and sizes of theservice hole in each cold formed steel member for any mechanical unit,electrical unit or plumbing unit is given as per respective drawings.

In decision 408, the conflict identification program 108 determines ifthe wall panel member's actual property values are within the range ofthe required property values. The measured actual values are compared tothe required values. This comparison assists in confirming that the wallpanel members are of the proper dimensions and have the features in theproper locations so that when the wall panel is assembled the membersline up, the features of the members are in the proper location, and thepanel is assembled with little to no issues. If the conflictidentification program 108 determines that an actual value of anyproperties of the wall panel member are outside the predeterminedtolerance range of the property, the conflict identification program 108creates the sick list and adds the identified member to the sick list.

In step 412, the conflict identification program 108 creates the sicklist of the wall panel members which have issues. This list may be theidentification of the members within the model as highlighted oridentified from the other members. In some embodiments, the sick list isa list showing the actual values, the required values, and thedifferences between these two values (delta) and highlight the memberdata to alert a user.

In step 414, the conflict identification program 108 modifies theconflicting wall panel members. Through either an automated process orthe selection of a user, the conflict identification program 108 is ableto modify the conflicting wall panel members to fall within thetolerance range set for each property value which is conflicting. Insome embodiments, this may require performing additional modificationsto the wall panel member if the modification results in other featuresof the wall panel member becoming problematic and conflicting with therequired values. For example, if a wall panel member is shortened andthus moving the position of an aperture, the aperture position may beadjusted to accommodate the shortening of the wall panel member.

FIG. 5 depicts a structural frame model 500 of a building, in accordancewith one embodiment of the present invention. In the depictedembodiment, the structural frame model 500 is comprised of a set ofmembers 502. This provides for the quickest processing as the members502 are already generated and have their features and propertiescreated.

FIG. 6 depicts a architectural model 600 of a building, in accordancewith one embodiment of the present invention. This model may include allthe finishings of the building such as doors 604, windows 606, andsheathing 602 but may lack the structural frame members. The conflictidentification program 108 is able to use the characteristics andfeatures of the model 600 to identify and isolate the sections of thebuilding which would be the walls. Through the identification of thewindows 604, and doors 606, the conflict identification program 108 isable to isolate with greater accuracy the walls.

FIGS. 7, 8A, and 8B depict illustrations of architectural views of abuilding, in accordance with one embodiment of the present invention.The conflict identification program 108 uses these illustrations toanalyse and identify the wall locations and wall properties. Forexample, the measurements 802 and 804 identify the height of the wallsand offset of the walls due to the floor joists. This also assists withidentifying the thickness of the walls and various other features whichthe members must possess for the wall panel members to be within thedesired tolerances.

FIGS. 10A-10C, and 11A-11B depicts images of a wall panel 1000, inaccordance with one embodiment of the present invention. The section ofwall is comprised of a top track 1002, a bottom track 1008, noggins 1006vertical members 1004. The conflict identification program 108 is ableto identify each member and each member's properties.

FIGS. 12A and 12B depicts an image of an intersection between twomembers, in accordance with one embodiment of the present invention. Inthe depicted embodiment, one wall panel member is notched 1202 toproperly receive the other member. The notches are specific based on themember it is receiving. In some embodiments, the conflict identificationprogram 108 identifies conflicts within each panel where the membersinteract, this may be based on a notch which is too small to receive theother member or a notch which is to large and the members do not tightlyfit together. For example, where members have lip cuts 1202 for eachmember is checked.

Member lip cuts are the standard tool operation in cold formed steelmembers and is determined by the location of another cold formed steelmember connecting to it. Actual lip cuts 1202 of each cold formed steelmember is determined from the model. Member web cuts 1204 are alsochecked. Member web cut is the standard tool operation in cold formedsteel and is determined by the location of another cold formed steelmember intersecting to it. Actual web cut 1204 of each cold formed steelmember is determined from the model. Member swedge for each cold formedsteel member is checked.

When two cold formed steel members having same size are connecting toeach other, then one member should be swedged 1206 into another member.Required swedge is determined by the location of another cold formedsteel member connecting to it. Actual swedge of each cold formed steelmember is determined from 3D model. The swedge is also used to calculateand determine if there is a conflict among members of the panel.

FIGS. 13A and 13B depicts images of wall panels, in accordance with oneembodiment of the present invention. Required locations and sizes of theservice holes 1302 and 1304 in each of the members for any mechanicalunit, electrical unit or plumbing unit or to tie the ceiling rod isgiven as per respective drawings. Actual location and sizes of theservice holes 1302 and 1304 is determined from global x, y and zcoordinates in the model. If any conflict is present in location andsize of service hole the it is shown on the sick list.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

Present invention: should not be taken as an absolute indication thatthe subject matter described by the term “present invention” is coveredby either the claims as they are filed, or by the claims that mayeventually issue after patent prosecution; while the term “presentinvention” is used to help the reader to get a general feel for whichdisclosures herein that are believed as maybe being new, thisunderstanding, as indicated by use of the term “present invention,” istentative and provisional and subject to change over the course ofpatent prosecution as relevant information is developed and as theclaims are potentially amended.

The foregoing descriptions of various embodiments have been presentedonly for purposes of illustration and description. They are not intendedto be exhaustive or to limit the present invention to the formsdisclosed. Accordingly, many modifications and variations of the presentinvention are possible in light of the above teachings will be apparentto practitioners skilled in the art. Additionally, the above disclosureis not intended to limit the present invention. In the specification andclaims the term “comprising” shall be understood to have a broad meaningsimilar to the term “including” and will be understood to imply theinclusion of a stated integer or step or group of integers or steps butnot the exclusion of any other integer or step or group of integers orsteps. This definition also applies to variations on the term“comprising” such as “comprise” and “comprises”.

Although various representative embodiments of this invention have beendescribed above with a certain degree of particularity, those skilled inthe art could make numerous alterations to the disclosed embodimentswithout departing from the spirit or scope of the inventive subjectmatter set forth in the specification and claims. Joinder references(e.g. attached, adhered, joined) are to be construed broadly and mayinclude intermediate members between a connection of elements andrelative movement between elements. As such, joinder references do notnecessarily infer that two elements are directly connected and in fixedrelation to each other. Moreover, network connection references are tobe construed broadly and may include intermediate members or devicesbetween network connections of elements. As such, network connectionreferences do not necessarily infer that two elements are in directcommunication with each other. In some instances, in methodologiesdirectly or indirectly set forth herein, various steps and operationsare described in one possible order of operation, but those skilled inthe art will recognize that steps and operations may be rearranged,replaced or eliminated without necessarily departing from the spirit andscope of the present invention. It is intended that all matter containedin the above description or shown in the accompanying drawings shall beinterpreted as illustrative only and not limiting. Changes in detail orstructure may be made without departing from the spirit of the inventionas defined in the appended claims.

Although the present invention has been described with reference to theembodiments outlined above, various alternatives, modifications,variations, improvements and/or substantial equivalents, whether knownor that are or may be presently foreseen, may become apparent to thosehaving at least ordinary skill in the art. Listing the steps of a methodin a certain order does not constitute any limitation on the order ofthe steps of the method. Accordingly, the embodiments of the inventionset forth above are intended to be illustrative, not limiting. Personsskilled in the art will recognize that changes may be made in form anddetail without departing from the spirit and scope of the invention.Therefore, the invention is intended to embrace all known or earlierdeveloped alternatives, modifications, variations, improvements and/orsubstantial equivalent.

What is claimed is:
 1. A computer implemented method of constructabilityconflict check for a structural system comprising: accessing, by atleast one processor, a model, wherein the model is comprised of aplurality of members; analyzing, by at least one processor, the model toidentify a frame, mechanical systems, electrical systems, and plumbingsystems within the model; isolating, by at least one processor, a set ofwall panels, wherein the wall panels are comprised of members;identifying, by at least one processor, features of the wall panelmembers, wherein the features include an interface type between each ofthe members and cutouts within the members based on the analyzed systemsof the model; analyzing, by at least one processor, each of the membersof the wall panel and determining a set of actual properties of thefeatures of each of the members from measurements; comparing, by atleast one processor, the actual properties of the features are within apredetermined tolerance of a set of required properties for each of themembers, wherein if the member is not within the set of requiredproperties, the member is marked as conflicting; generating, by at leastone processor, a list of all conflicting members; and modifying, by atleast one processor, the conflicting member properties associated to theidentified features to within the predetermined tolerance of the set ofrequired properties without user's interference to eliminate occurringof error during construction process; wherein the conflicting memberproperties include position and orientation of the cutouts.
 2. Thecomputer implemented method of claim 1, wherein each member is analyzedfor spatial positioning.
 3. The computer implemented method of claim 1,further comprising, extracting, by at least one processor, all non-wallpanel members from the model.
 4. The computer implemented method ofclaim 1, wherein a priority is established for the member which ismodified based on an interface type of the members.
 5. The computerimplemented method of claim 1, further comprising, categorizing, by atleast one processor, the wall panel members based on the actualproperties of the members.
 6. The computer implemented method of claim1, further comprising, altering, by at least one processor, the featuresof the member based on the modification to correct one of the conflicts.7. The computer implemented method of claim 1, further comprising,analyzing, by at least one processor, the model to determine therequired properties of the wall panels.
 8. A computer program productcomprising: a computer readable storage device readable by one or moreprocessing circuit and storing instructions for execution by one or moreprocessor for performing a method of constructability conflict check fora structural system comprising: accessing a model, wherein the model iscomprised of a plurality of members; analyzing the model to identify aframe, mechanical systems, electrical systems, and plumbing systemswithin the model; isolating a set of wall panels within the model,wherein the wall panels are comprised of members; identifying featuresof the wall panel members, wherein the features include an interfacetype between each of the members and cutouts within the members based onthe analyzed systems of the model; analyzing each of the members of thewall panel and determining a set of actual properties of the features ofeach of the members from measurements; comparing the set of actualproperties of the features with a predetermined tolerance of a set ofrequired properties for each of the members, wherein if the member isnot within the set of required properties, the member is marked asconflicting; generating a list of all conflicting members and highlightthe members within the model; and performing a set of alterations to theconflicting member properties associated to the identified features towithin the predetermined tolerance of the set of required propertieswithout user's interference to eliminate occurring of error duringconstruction process; wherein the conflicting member properties includeposition and orientation of the cutouts.
 9. The computer program productof claim 8, wherein each member is analyzed for spatial positioning. 10.The computer program product of claim 8, further comprising, modifyingthe conflicting member properties to within the predetermined toleranceof the set of required properties.
 11. The computer program product ofclaim 10, wherein a priority is established for the member which ismodified based on an interface type of the members.
 12. A systemcomprising: a memory; one or more processors in communication with thememory; program instructions executable by the one or more processorsvia the memory to perform a method of constructability conflict checkfor a structural system, the method comprising: accessing a model,wherein the model is comprised of a plurality of members; analyzing themodel to identify a frame, mechanical systems, electrical systems, andplumbing systems within the model; isolating a set of wall panels withinthe model; wherein the set of wall panels are comprised of members;identifying features of the wall panel members, wherein the featuresinclude an interface type between each of the members and cutouts withinthe members based on the analyzed systems of the model; analyzing eachof the members of the wall panel and determining a set of actualproperties the features of each of the members from measurements;comparing the actual properties of the features are within apredetermined tolerance of a set of required properties for each of themembers, wherein if the member is not within the set of requiredproperties, the member is marked as conflicting; generating a list ofall conflicting members; and modifying the conflicting member propertiesassociated to the identified features to within the predeterminedtolerance of the set of required properties without user's interferenceto eliminate occurring of error during construction process; wherein theconflicting member properties include position and orientation of thecutouts.
 13. The system of claim 12, wherein each member is analyzed forspatial positioning.